#!/bin/sh
set -euo pipefail

SETUP_PARAMS=""

if [[ -n "${IDENTITY_ADDR:-}" ]]; then
	export STORJ_SERVER_ADDRESS="${IDENTITY_ADDR}"
fi

if [[ ! -f "${CONF_PATH}/config.yaml" ]]; then
	./satellite setup $SETUP_PARAMS
fi

RUN_PARAMS="${RUN_PARAMS:-} --config-dir ${CONF_PATH}"

if [ "${SATELLITE_ADMIN:-}" = "true" ]; then
  exec ./satellite run admin $RUN_PARAMS "$@"
fi

if [ "${SATELLITE_API:-}" = "true" ]; then
  exec ./satellite run api $RUN_PARAMS "$@"
fi

if [ "${SATELLITE_GC:-}" = "true" ]; then
  exec ./satellite run garbage-collection $RUN_PARAMS "$@"
fi

if [ "${SATELLITE_MIGRATE:-}" = "true" ]; then
  exec ./satellite run migration $RUN_PARAMS "$@"
fi

if [ "${SATELLITE_REPAIR:-}" = "true" ]; then
  exec ./satellite run repair $RUN_PARAMS "$@"
fi

exec ./satellite run $RUN_PARAMS "$@"
